Voice-over-Internet-Protocol (VoIP) is used in IP telephony to send voice information in digital form in discrete packets rather than in the traditional circuit-committed protocols of the public switched telephone network (PSTN). In addition to IP, VoIP uses realtime transport protocol (RTP) to help ensure that packets get delivered in a timely manner. RTP combines its data transport with a realtime transport control protocol (RTCP) to, for example, monitor data delivery. Such monitoring allows the receiver to detect if there is any packet loss and to compensate for any delay jitter.
RTP works independently of underlying transport and network layer protocols. Information in the RTP header tells the receiver how to reconstruct the data and describes how the codec bit streams are packetized. RTP components include a sequence number used to detect lost packets, payload identification to describe media encoding, frame indication to mark the beginning and end of each frame, source identification to identify the originator of the frame, and intramedia synchronization to detect and compensate for different delay jitter within a single stream.
VoIP session detail records (SDRs) are required by telecom service providers to ensure service level agreements. With wide deployment of VoIP networks and increasing volume of VoIP-to-VoIP calls, especially transcoding-free VoIP-to-VoIP sessions, all telecom carriers will find it critical to efficiently generate VoIP session detail records.
The session detail record of a VoIP session may be generated by measuring the received RTP packets. This approach requires intensive computation by hardware resources and is cost-inefficient.
For transcoding-free VoIP-to-VoIP calls, the session detail record of a VoIP session may also be efficiently derived from the RTCP packets in the session, which contain session identification data (e.g., payload types, total packets sent, total packets received) and Quality of Service (QoS) metrics (e.g., packet loss, jitter, and round trip time).